Skip to content

Remove wheel-tests-cudf-polars-with-rapidsmpf in favor of existing wheel-tests-cudf-polars#22467

Merged
rapids-bot[bot] merged 7 commits into
rapidsai:mainfrom
mroeschke:ci/cudf_polars/no_rmpf_job
May 13, 2026
Merged

Remove wheel-tests-cudf-polars-with-rapidsmpf in favor of existing wheel-tests-cudf-polars#22467
rapids-bot[bot] merged 7 commits into
rapidsai:mainfrom
mroeschke:ci/cudf_polars/no_rmpf_job

Conversation

@mroeschke
Copy link
Copy Markdown
Contributor

Description

Now that rapidsmpf is a required dependency of cudf_polars, wheel-tests-cudf-polars-with-rapidsmpf was almost functionally identical to wheel-tests-cudf-polars. To make the former align to the latter:

  • ray is now installed in the wheel-tests-cudf-polars job
  • --ignore=tests/experimental was removed when running tests in wheel-tests-cudf-polars

Checklist

  • I am familiar with the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@mroeschke mroeschke self-assigned this May 11, 2026
@mroeschke mroeschke requested a review from a team as a code owner May 11, 2026 22:09
@mroeschke mroeschke requested a review from bdice May 11, 2026 22:09
@mroeschke mroeschke added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels May 11, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 11, 2026

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 35abd16d-cee7-4421-baf9-6017970ae6e4

📥 Commits

Reviewing files that changed from the base of the PR and between 8b05f3e and 5bf0fa3.

📒 Files selected for processing (2)
  • .github/workflows/pr.yaml
  • .github/workflows/test.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • .github/workflows/test.yaml
  • .github/workflows/pr.yaml

📝 Walkthrough

Summary by CodeRabbit

  • Chores

    • CI updated: a wheel test job was removed, the ignored-PR job list adjusted, and container options (ptrace, larger shared memory, higher ulimit) added to a wheel test job.
    • Several standalone experimental CI scripts were removed.
  • Tests

    • Experimental tests now run as part of the main wheel test workflow.
    • CI package installs now include the Ray extra for relevant test runs.
    • A rolling test was updated to wrap its GPU equality assertion with a warning helper.

Walkthrough

Consolidates cudf_polars experimental testing into main wheel test workflow: removes separate experimental scripts and job, adds container runtime options to wheel-tests-cudf-polars, enables tests/experimental in CI runs, and adds the ray extra to wheel installs.

Changes

Test Workflow Consolidation

Layer / File(s) Summary
Workflow Job Configuration
.github/workflows/pr.yaml
Update checks.ignored_pr_jobs to stop ignoring the removed job and remove the wheel-tests-cudf-polars-with-rapidsmpf job so execution flows from wheel-tests-cudf-polars to downstream tests.
Container Runtime Configuration
.github/workflows/pr.yaml, .github/workflows/test.yaml
Add container-options to wheel-tests-cudf-polars (CAP_SYS_PTRACE, increased /dev/shm, raised nofile ulimit) in both workflows.
Remove Dedicated Experimental Test Scripts
ci/run_cudf_polars_experimental_pytests.sh, ci/test_cudf_polars_experimental.sh
Delete scripts that previously handled experimental wheel installation, constraint generation, Polars version selection, timeout-wrapped test execution, and exit-code capture.
Integrate Tests into Main Test Suite
ci/run_cudf_polars_pytests.sh, ci/test_wheel_cudf_polars.sh
Remove --ignore=tests/experimental so experimental tests run; add ray extra to the cudf_polars wheel install in CI.
Tests / Warning Handling
python/cudf_polars/tests/experimental/test_rolling.py
Import and use warns_on_spmd to handle the expected UserWarning instead of matching variant warning messages with pytest.warns(...) around the GPU equality assertion.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related issues

Possibly related PRs

  • rapidsai/cudf#22490: Also modifies .github/workflows/pr.yaml and checks workflow ignored jobs.
  • rapidsai/cudf#22479: Touches the telemetry-summarize workflow/job configuration referenced in ignored_pr_jobs.
  • rapidsai/cudf#22420: Related CI changes ensuring cudf_polars tests run with Ray-enabled configuration.

Suggested reviewers

  • bdice
  • msarahan
  • jameslamb
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and directly summarizes the main change: removing a redundant CI job in favor of consolidating into an existing one.
Description check ✅ Passed The description is directly related to the changeset, explaining why the job was removed (rapidsmpf now required) and how the existing job was aligned.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@mroeschke mroeschke requested a review from a team as a code owner May 12, 2026 00:38
@github-actions github-actions Bot added Python Affects Python cuDF API. cudf-polars Issues specific to cudf-polars labels May 12, 2026
@GPUtester GPUtester moved this to In Progress in cuDF Python May 12, 2026
Comment thread python/cudf_polars/tests/experimental/test_rolling.py Outdated
@mroeschke mroeschke requested a review from Matt711 May 12, 2026 17:06
Copy link
Copy Markdown
Member

@jameslamb jameslamb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving so you can do what you want, left one small question/suggestion.

--prefer-binary \
--constraint "${PIP_CONSTRAINT}" \
"$(echo "${CUDF_POLARS_WHEELHOUSE}"/cudf_polars_"${RAPIDS_PY_CUDA_SUFFIX}"*.whl)[test,experimental]" \
"$(echo "${CUDF_POLARS_WHEELHOUSE}"/cudf_polars_"${RAPIDS_PY_CUDA_SUFFIX}"*.whl)[test,experimental,ray]" \
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With this change, is there ANY place left in CI where cudf-polars is tested without ray?

If not, then CI can't catch a bug of the form "we call ray an optional dependency but it's imported unconditionally".

Might be worth coming up with a plan for that. The lightest-weight way I can think of (but which isn't as thorough as running the test suite) would be to do something like this:

pip uninstall --yes ray
python -c "import cudf_polars"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good observation. We should be running the Polars test suite (cudf-polars-polars-tests) without Ray (or Dask) installed, but it feel less "intentional" to rely on integrations tests to validate that these dependencies are optional. I opened #22478 to follow up on this

@mroeschke
Copy link
Copy Markdown
Contributor Author

/merge

@rapids-bot rapids-bot Bot merged commit 5c5e962 into rapidsai:main May 13, 2026
117 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in cuDF Python May 13, 2026
@mroeschke mroeschke deleted the ci/cudf_polars/no_rmpf_job branch May 13, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cudf-polars Issues specific to cudf-polars improvement Improvement / enhancement to an existing function non-breaking Non-breaking change Python Affects Python cuDF API.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

6 participants